const fs = require("fs");
const path = require("path");
const shell = require('shelljs');

/*
    打开开发者工具
    目前仅支持打开微信开发者工具
    入参：env-环境变量UNI_NODE_ENV，platform-平台（H5，MP-WEIXIN等）
*/

// 运行项目路径读取
const PRESET_PATH = path.resolve(__dirname, './');

export function openDevTools (env, platform) {
    // 编译文件目录
    const DIST_PATH = `dist/${env == 'development' ? 'dev' : 'build'}/mp-weixin`;
    // 编译输出文件路劲
    const EXPORT_WEIXIN_FILE_PATH = path.resolve(PRESET_PATH, DIST_PATH);
    // 判断端口
    if (platform == 'mp-weixin') {
        openWeiXinDevtool(EXPORT_WEIXIN_FILE_PATH);
    }
}

// 打开微信开发者工具
function openWeiXinDevtool (path) {
    // 开发者工具安装路径，\需要转义
    const toolPath = 'D:\\Program Files (x86)\\Tencent\\微信web开发者工具';
    if (!toolPath) {
        shell.echo('当前调试器路径为空, 自动打开调试器功能将失效');
    }
    // 等待编译完成后打开开发者工具
    setTimeout(() => {
        shell.cd(toolPath);
        shell.exec(`cli open --project ${path}`, () => {
            // shell.cd(PRESET_PATH)
        });
    }, 10000);
}
